package org.wdcode.common.constants;

/**
 * 日期常量
 * @author WD
 * @since JDK6
 * @version 1.0 2009-11-20
 */
public final class DateConstants {
	/* 日期格式 */
	/**
	 * 日期格式 yyyyMMdd
	 */
	public final static String	FORMAT_YYYYMMDD;
	/**
	 * 日期格式 yyyy-MM-dd
	 */
	public final static String	FORMAT_YYYY_MM_DD;
	/**
	 * 日期格式 yyyy-MM-dd HH:mm:ss
	 */
	public final static String	FORMAT_Y_M_D_H_M_S;
	/**
	 * 日期格式 HH:mm:ss
	 */
	public final static String	FORMAT_HH_MM_SS;

	/**
	 * 静态初始化
	 */
	static {
		// 日期格式 yyyyMMdd
		FORMAT_YYYYMMDD = "yyyyMMdd";
		// 日期格式 yyyy-MM-dd
		FORMAT_YYYY_MM_DD = "yyyy-MM-dd";
		// 日期格式 yyyy-MM-dd HH:mm:ss
		FORMAT_Y_M_D_H_M_S = "yyyy-MM-dd HH:mm:ss";
		// 日期格式 HH:mm:ss
		FORMAT_HH_MM_SS = "HH:mm:ss";
	}

	/* 日期时间 */
	/**
	 * 日期时间 一天开始 00:00:00
	 */
	public final static String	DATE_DAY_STATR;
	/**
	 * 日期时间 一天开始 23:59:59
	 */
	public final static String	DATE_DAY_END;

	/**
	 * 静态初始化
	 */
	static {
		// 日期时间 一天开始 00:00:00
		DATE_DAY_STATR = "00:00:00";
		// 日期时间 一天开始 23:59:59
		DATE_DAY_END = "23:59:59";
	}

	/* 时间常量 */
	/**
	 * 时间常量 秒 = X毫秒
	 */
	public final static long	TIME_SECOND;
	/**
	 * 时间常量 分 = X毫秒
	 */
	public final static long	TIME_MINUTE;
	/**
	 * 时间常量 时 = X毫秒
	 */
	public final static long	TIME_HOUR;
	/**
	 * 时间常量 天 = X毫秒
	 */
	public final static long	TIME_DAY;
	/**
	 * 时间常量 周 = X毫秒
	 */
	public final static long	TIME_WEEK;

	/**
	 * 静态初始化
	 */
	static {
		// 时间常量 秒 = X毫秒
		TIME_SECOND = 1000L;
		// 时间常量 分 = X毫秒
		TIME_MINUTE = 60000L;
		// 时间常量 时 = X毫秒
		TIME_HOUR = 3600000L;
		// 时间常量 天 = X毫秒
		TIME_DAY = 86400000L;
		// 时间常量 周 = X毫秒
		TIME_WEEK = 604800000L;
	}

	/**
	 * 私有构造禁止外部实例化
	 */
	private DateConstants() {}
}
